package net.lab1024.sa.admin.module.business.core.material.domain.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import lombok.Data;

/**
 * 物料信息表 实体类
 *
 * @Author ADog
 * @Date 2025-09-19 16:40:32
 * @Copyright 1.0
 */

@Data
@TableName("t_core_material")
public class MaterialEntity {

    /**
     * 主键
     */
    @TableId(type = IdType.AUTO)
    private Long materialId;

    /**
     * 物料分类ID
     */
    private Long materialCategoryId;

    /**
     * 物料编码
     */
    private String materialCode;

    /**
     * 物料名称
     */
    private String materialName;

    /**
     * 物料规格
     */
    private String materialSpecification;

    /**
     * 物料单位
     */
    private String materialUnit;

    /**
     * 物料来源类型(0：自制 1：外购)
     */
    private Integer materialSourceType;

    /**
     * 物料分类类型（0：原材料,1：半成品,2：产成品）
     */
    private Integer materialCategoryType;

    /**
     * 条形码
     */
    private String materialBarcode;

    /**
     * 版本号（用于乐观锁）
     */
    private Integer version;

    /**
     * 备注
     */
    private String remark;

    /**
     * 删除状态
     */
    private Integer deletedFlag;

    /**
     * 禁用状态
     */
    private Integer disabledFlag;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

}
